1
Merancang untuk Konkurensi: Kerangka Lima Pertanyaan
AI019Lesson 9
00:00

Merancang konkurensi di Elixir melampaui sekadar memulai proses secara sederhana; diperlukan metodologi yang ketat untuk mencapai keandalan 99,9999999% (sembilan sembilan). Ini setara dengan sekitar 1 detik gangguan setiap 30 tahun. Untuk mencapai standar ini, kita menggunakan Kerangka Lima Pertanyaan.

Heuristik Struktural

Sebelum menulis satu baris kode OTP, gunakan pertanyaan-pertanyaan ini untuk menguraikan masalah berstatus menjadi primitif yang dapat dikelola:

  • Lingkungan & Kendala: Apakah itu satu node? Klaster global? Berapa batas memori/I/O-nya?
  • Titik Fokus: Di mana data tinggal? Siapa yang "memiliki" status (misalnya, buku hasil)?
  • Karakteristik Runtime: Berapa banyak permintaan konkuren? Apakah mereka terbatas oleh CPU atau I/O?
  • Perlindungan: Status apa yang harus bertahan hidup? Apa yang bisa kita abaikan dan mulai ulang?
  • Pengenalan Awal: Bagaimana kita menginisialisasi pohonnya? Layanan mana yang bergantung pada yang lain?
99,9999999%KEANDALANLINGKUNGANTITIK FOKUSRUNTIMEPERLINDUNGANBERJALAN

Dengan memperlakukan pertanyaan-pertanyaan ini sebagai kendala, Anda mencegah keadaan konkurensi "Bola Lumpur Besar" di mana setiap proses berbicara dengan proses lain tanpa hierarki yang jelas.

main.py
TERMINALbash — 80x24
> Ready. Click "Run" to execute.
>